# 密码长度判断

def passwd_estimate1(passwd):
    if len(passwd) > 8:
        # grade = 0
        # grade += 1
        # 返回1，表示长度符合标准
        return 1
    else:
        # 返回0，表示长度不符合标准
        return 0

# 大小写字母、数字、特殊字符的判断

def passwd_estimate2(passwd):
    a = b = c = d = 0
    grade = 0
    for i in passwd:
        if i.isupper():
            a = 1
        elif i.islower():
            b = 1
        elif i.isdigit():
            c = 1
        else:
            d = 1
    sum = a + b + c + d
    if sum >= 3:

        # grade += 1
        # 返回1，表示有3种及以上字符，符合标准
        return 1
    else:
        # 返回0，表示字符种类小于3种，不符合标准
        return 0

# 重复子串判断

def passwd_setimate3(passwd):

    grade = 0
    for a in range(len(passwd)):
        if passwd.count(passwd[a:a + 3]) >= 2:
            break
        else:
            grade = 1
    return grade

# 主函数

passwd = input("请输入密码：")
grade = 2
advice = []
print(passwd_estimate1(passwd))
print(passwd_estimate2(passwd))
print(passwd_setimate3(passwd))
if passwd_estimate1(passwd) != 1:
    advice.append("密码没有超过8位！")
else:
    grade += 1
if passwd_estimate2(passwd) != 1:
    advice.append("你的密码需要包括大、小写字母.数字.其它符号,以上四种至少三种！")
else:
    grade += 1
if passwd_setimate3(passwd) != 1:
    advice.append("你的密码有长度超过或等于3的子串重复！")
else:
    grade += 1
print(grade,advice)